// 入口函数
$(function () {
    // 实例化对象
    const form = layui.form
    const layer = layui.layer

    // 表单验证规则
    form.verify({
        nickname: function (value) {
            if (value.length < 1 || value.length > 6) {
                return '昵称长度必须在1 ~ 6个字符之间!'
            }
        }
    })

    // 初始化用户的基本信息
    initUserInfo()

    function initUserInfo() {
        $.ajax({
            method: 'GET',
            url: '/my/userinfo',
            success: function (res) {
                if (res.status !== 0) {
                    return layer.msg('获取用户信息失败')
                }
                console.log(res)

                // 调用form.val()快捷赋值
                form.val('formUserInfo', res.data)
            }
        })
    }

    // 完成重置按钮重新获取用户信息
    $('#btnReset').on('click', function (e) {
        e.preventDefault()
        initUserInfo()
    })


    // 监听表单的提交事件
    $('.layui-form').on('submit', function (e) {
        // 阻止表单默认行为
        e.preventDefault()

        // 发起更新用户信息的ajax请求
        $.ajax({
            method: 'POST',
            url: '/my/userinfo',
            data: $(this).serialize(),
            success: function (res) {
                if (res.status !== 0) {
                    return layer.msg(res.message)
                }
                layer.msg(res.message)

                // 子页面调用父页面封装好的方法
                window.parent.getUserInfo()
            }
        })

    })
})